package com.choosefine.it.basedata.model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;

import com.choosefine.it.base.Base;

/**
 * 工人数据模型
 * @author guwenwei
 * @date 2016/11/16
 */
@ApiModel(value = "工人模型", description = "工人类型基础数据模型")
public class Worker extends Base implements Serializable {
    /**
	 * 工人id
     */
	@ApiModelProperty(value = "主键ID", required = true)
    private Integer id;

    /**
     * 用户唯一标识
     */
	@ApiModelProperty(value = "用户唯一标识", required = true)
    private String uuid;

    /**
     * 自我评价
     */
	@ApiModelProperty(value = "自我评价", required = true)
    private String selfAppraisal;

    /**
     * 用户等级
     */
	@ApiModelProperty(value = "工人等级", required = true)
    private Integer level;

    /**
     * 技能标签
     */
	@ApiModelProperty(value = "技能标签", required = true)
    private String skillLabel;

    /**
     * 工人状态
     */
	@ApiModelProperty(value = "工人状态", required = true)
    private Integer workState;

    /**
     * 技能证书
     */
	@ApiModelProperty(value = "技能证书", required = true)
    private String skillsCcie;

    /**
     * 紧急联系人
     */
	@ApiModelProperty(value = "紧急联系人", required = true)
    private String econtact;

    /**
     * 紧急联系人号码
     */
	@ApiModelProperty(value = "紧急联系人号码", required = true)
    private String econtactPhonenumber;


    private static final long serialVersionUID = 1L;


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getUuid() {
        return uuid;
    }

    public void setUuid(String uuid) {
        this.uuid = uuid == null ? null : uuid.trim();
    }

    public String getSelfAppraisal() {
        return selfAppraisal;
    }

    public void setSelfAppraisal(String selfAppraisal) {
        this.selfAppraisal = selfAppraisal == null ? null : selfAppraisal.trim();
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public String getSkillLabel() {
        return skillLabel;
    }

    public void setSkillLabel(String skillLabel) {
        this.skillLabel = skillLabel == null ? null : skillLabel.trim();
    }

    public Integer getWorkState() {
        return workState;
    }

    public void setWorkState(Integer workState) {
        this.workState = workState;
    }

    public String getSkillsCcie() {
        return skillsCcie;
    }

    public void setSkillsCcie(String skillsCcie) {
        this.skillsCcie = skillsCcie == null ? null : skillsCcie.trim();
    }

    public String getEcontact() {
        return econtact;
    }

    public void setEcontact(String econtact) {
        this.econtact = econtact == null ? null : econtact.trim();
    }

    public String getEcontactPhonenumber() {
        return econtactPhonenumber;
    }

    public void setEcontactPhonenumber(String econtactPhonenumber) {
        this.econtactPhonenumber = econtactPhonenumber == null ? null : econtactPhonenumber.trim();
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Worker other = (Worker) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getUuid() == null ? other.getUuid() == null : this.getUuid().equals(other.getUuid()))
            && (this.getSelfAppraisal() == null ? other.getSelfAppraisal() == null : this.getSelfAppraisal().equals(other.getSelfAppraisal()))
            && (this.getLevel() == null ? other.getLevel() == null : this.getLevel().equals(other.getLevel()))
            && (this.getSkillLabel() == null ? other.getSkillLabel() == null : this.getSkillLabel().equals(other.getSkillLabel()))
            && (this.getWorkState() == null ? other.getWorkState() == null : this.getWorkState().equals(other.getWorkState()))
            && (this.getSkillsCcie() == null ? other.getSkillsCcie() == null : this.getSkillsCcie().equals(other.getSkillsCcie()))
            && (this.getEcontact() == null ? other.getEcontact() == null : this.getEcontact().equals(other.getEcontact()))
            && (this.getEcontactPhonenumber() == null ? other.getEcontactPhonenumber() == null : this.getEcontactPhonenumber().equals(other.getEcontactPhonenumber()))
            && (this.getCtime() == null ? other.getCtime() == null : this.getCtime().equals(other.getCtime()))
            && (this.getUtime() == null ? other.getUtime() == null : this.getUtime().equals(other.getUtime()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getUuid() == null) ? 0 : getUuid().hashCode());
        result = prime * result + ((getSelfAppraisal() == null) ? 0 : getSelfAppraisal().hashCode());
        result = prime * result + ((getLevel() == null) ? 0 : getLevel().hashCode());
        result = prime * result + ((getSkillLabel() == null) ? 0 : getSkillLabel().hashCode());
        result = prime * result + ((getWorkState() == null) ? 0 : getWorkState().hashCode());
        result = prime * result + ((getSkillsCcie() == null) ? 0 : getSkillsCcie().hashCode());
        result = prime * result + ((getEcontact() == null) ? 0 : getEcontact().hashCode());
        result = prime * result + ((getEcontactPhonenumber() == null) ? 0 : getEcontactPhonenumber().hashCode());
        result = prime * result + ((getCtime() == null) ? 0 : getCtime().hashCode());
        result = prime * result + ((getUtime() == null) ? 0 : getUtime().hashCode());
        return result;
    }
}